package interfaz;

import java.rmi.Remote;
import java.rmi.RemoteException;

import VO.ListaPrecioCPVO;
import negocio.beans.oficinaventa.Cliente;
import negocio.beans.oficinaventa.Cotizacion;
import negocio.beans.oficinaventa.Factura;
import negocio.beans.oficinaventa.Item;
import negocio.beans.oficinaventa.OrdenDePedido;
import negocio.beans.oficinaventa.Remito;
import negocio.beans.oficinaventa.Rodamiento;

public interface InterfazRemota extends Remote 
{

	 public ListaPrecioCPVO elegirMejorPrecio(String serie,String marca, String origen)throws RemoteException;
	 public Cotizacion cargaSolicitudCotizacion(Cotizacion c)throws RemoteException;
	 
//	 --------------------------------------CLIENTE-------------------------------------------------------------
	 public Cliente buscarCliente(String cuit)throws RemoteException;
	 public boolean altaCliente(Cliente c) throws RemoteException;	 
	 public boolean bajaCliente(String cuit) throws RemoteException;
	 public boolean modificacionCliente(Cliente c) throws RemoteException;
	 //public Cliente obtenerCliente(int id)throws RemoteException;
	 //public void eliminarClientePorId(int id)throws RemoteException;
//	 --------------------------------------REMITO-------------------------------------------------------------
	 
	 public void enviarOrdenDePedido(OrdenDePedido o) throws RemoteException ;
	 public Remito generarRemito(OrdenDePedido o) throws RemoteException ;
	 public void altaRemito(Remito r) throws RemoteException;
	 
//	 --------------------------------------RODAMIENTO------------------------------------------------------------- 
	 
	 public  Rodamiento buscarRodamientoPorCodigo(String codigoSKF) throws RemoteException;
	 
//----------------------------------------COTIZACION-----------------------------------------------------------
	 
	 public void crearMarca(String nombre, String nacionalidad, String categoria)throws RemoteException;
	 public Cotizacion ObtenerCotizacion(int nroCotizacion) throws RemoteException;
	 
//	 Cotizacion generarCotizacion (Cotizacion cotizacion) throws RemoteException ;
//	 public List<Cotizacion> getCotizaciones() throws RemoteException ;
//	 public Cotizacion getCotizacion(int id) throws RemoteException;
	 
//	 --------------------------------------FACTURA-------------------------------------------------------------
	 
	 public Factura facturar(String cuit) throws RemoteException;
	 
//	 ---------------------------------------------------------------------------------------------------
	 
//	 
//	 Cotizacion generarCotizacion (Cotizacion cotizacion) throws RemoteException ;
//	 double elegirMejorPrecio(Item it) throws RemoteException ;
//	 Remito generarRemito(Set<Item> items) throws RemoteException ;
//	 public void altaCliente(Cliente c) throws RemoteException ;
//	 public void bajaCliente(Cliente c) throws RemoteException ;
//	 public int getId()throws RemoteException;
//	 public Cliente obtenerCliente(int id)throws RemoteException;
//	 public void eliminarClientePorId(int id)throws RemoteException;
//	 public void cargarCotizacionXML(int idCliente,Document doc) throws RemoteException;
//	 public void saveCotizacion(Cotizacion cotizacion) throws RemoteException;
//	 public  Rodamiento buscarRodamientoPorCodigo(String codigoSKF) throws RemoteException;
//	 public List<Cotizacion> getCotizaciones() throws RemoteException ;
//	 public List<Factura> getFacturas() throws RemoteException ;
//	 public Cotizacion getCotizacion(int id) throws RemoteException;
	 
}

